// https://leetcode.cn/problems/fruit-into-baskets/description/
// class Solution {
// public:
//     int totalFruit(vector<int>& fruits) {
//         int n = fruits.size();
//         unordered_map<int, int> _map;
//         int left = 0, right = 0;
//         int result = 0;
//         for (right; right < n; right++) {
//             // 进窗口
//             _map[fruits[right]]++;
//             while (_map.size() > 2) {
//                 // 出窗口
//                 _map[fruits[left]]--;
//                 if (_map[fruits[left]] == 0) {
//                     _map.erase(fruits[left]);
//                 }

//                 left++;
//             }
//             result=max(result, right - left + 1);
//         }
//         return result;
//     }
// };